package model

import (
	"gorm.io/gorm"
	"time"
)

type TaskStatus string

const (
	StatusPending TaskStatus = "pending" // 待执行
	StatusDoing   TaskStatus = "doing"   // 执行中
	StatusDone    TaskStatus = "done"    // 已完成
)

type Task struct {
	gorm.Model            // 内置字段：ID（主键）、CreatedAt（创建时间）、UpdatedAt（更新时间）、DeletedAt（软删除）
	Title      string     `gorm:"size:100;not null" json:"title"` // 任务标题（非空，最大100字符）
	Content    string     `gorm:"type:text" json:"content"`       // 任务详情（长文本）
	DueTime    time.Time  `gorm:"not null" json:"due_time"`       // 截止时间（非空）
	Status     TaskStatus `gorm:"default:pending" json:"status"`  // 任务状态（默认待执行）
	AIPlan     string     `gorm:"type:text" json:"ai_plan"`       // AI生成的任务规划
	AIAdvice   string     `gorm:"type:text" json:"ai_advice"`     // AI生成的执行建议
}
